Pular para o conteúdo principal

Identificação do Usuário em Eventos

Como Cruzar Informações para Identificar o Usuário

Em muitos cenários operacionais, identificar o usuário responsável por um evento é essencial para análises, ações contextuais e auditorias. Abaixo, listamos possíveis abordagens para realizar essa identificação com base em práticas técnicas seguras e compatíveis com diretrizes de privacidade.

1 - Usando notificationToken:

Essa função espera um parâmetro do tipo String, que representa o token de notificação do usuário. No iOS, esse token é fornecido pelo APNS (Apple Push Notification Service), enquanto no Android ele é obtido por meio do Firebase Cloud Messaging.

Android

Requisitos

  • Ter um projeto Firebase com FCM habilitado
  • Utilizar a biblioteca react-native-firebase (documentação)
  • SDK de compilação mínima: 31

Apenas Firebase:

No arquivo App.js ou App.tsx do projeto React Native, chame o seguinte método:

// Importar o SDK do Grouplink
import * as GroupLinkSDK from '@grouplinknetwork/rn-grouplink-sdk';

export default function App() {
React.useEffect(() => {
// Definir o token do Firebase
GroupLinkSDK.setFirebaseToken(token);
...
}, []);
return (
<View style={styles.container}>
<Text>Este é um aplicativo de teste</Text>
</View>
);
}

Apenas OneSignal:

// Importar o SDK do Grouplink
import * as GroupLinkSDK from 'rn-grouplink-sdk';
import * as OneSignal from 'onesignal-node';

export default function App() {
React.useEffect(() => {
// Inicializar Grouplink e OneSignal
...
setPushToken();
}, []);
return (
<View style={styles.container}>
<Text>Este é um aplicativo de teste</Text>
</View>
);
}

async function setPushToken() {
let deviceState: OneSignal.DeviceState|null = (await OneSignal.default.getDeviceState());
if(deviceState!=null){
let token : String = deviceState.pushToken;
console.log("PUSH TOKEN => " + token);
GroupLinkSDK.setFirebaseToken(token);
}
}

2 - Usando notification_name:

Essa função espera um parâmetro do tipo String que representa o nome da notificação associado ao dispositivo. Esse nome é um identificador personalizável que pode ser usado para gerenciar ou rotular notificações para um usuário ou contexto específico.

Recomendamos fortemente não usar informações sensíveis no notification_name. Em vez disso, utilize identificadores únicos que estejam devidamente criptografados ou ofuscados. Por exemplo, usar o session-id do usuário é uma abordagem mais segura que ajuda a garantir a segurança e a privacidade ao identificar dispositivos.

Definindo o notification_name do usuário:

export default function App() {
useEffect(() => {
...
GroupLinkSDK.setNotificationName(exampleNotificationName);
}, []);

return (
<View style={styles.container}>
<Text>Este é um aplicativo de teste</Text>
</View>
);
}

Obtendo o notification_name do usuário:

export default function App() {
useEffect(() => {
...
let notificationName = GroupLinkSDK.getNotificationName();
}, []);

return (
<View style={styles.container}>
<Text>Este é um aplicativo de teste</Text>
</View>
);
}